Middleware Engineer
About Fusemachines
Fusemachines is a 10+ year old AI company, dedicated to delivering state-of-the-art AI products and solutions to a diverse range of industries. Founded by Sameer Maskey, Ph.D., an Adjunct Associate Professor at Columbia University, our company is on a steadfast mission to democratize AI and harness the power of global AI talent from underserved communities. With a robust presence in four countries and a dedicated team of over 400 full-time employees, we are committed to fostering AI transformation journeys for businesses worldwide. At Fusemachines, we not only bridge the gap between AI advancement and its global impact but also strive to deliver the most advanced technology solutions to the world.
This is a 1-year contractual role.
About the role:
We are seeking a Middleware Engineer with hands-on Java & Python experience and proven analytical and problem-solving skills. The ideal candidate will be responsible for the configuration, deployment, and management of middleware systems to support enterprise applications. This role involves working closely with development, operations, and infrastructure teams to ensure the seamless integration of applications and systems while optimizing performance and reliability.
Roles and Responsibilities:
- Install, configure and maintain middleware technologies (experience with any of these: Websphere, Weblogic, Tomcat, JBoss, Kafka, RabbitMQ or similar).
- Ensure high availability, scalability and reliability of middleware systems.
- Design and implement solutions for system and application integration.
- Automate routine tasks, processes, legacy data fusion.
- Optimize middleware performance and recommend improvements.
- Design and development of middleware components.
- Design and implement API necessary for the integration and or data consumption.
- Work independently and collaboratively on a multi-disciplined project team in an Agile development environment.
- Be actively involved in the design, development and testing activities for Big data products.
- Provide feedback to development teams on code/architecture optimization.
- Design and implement secure data processing pipelines, including concepts like data spines, for handling sensitive information.
- Architect and differentiate between event-driven and batch-based data pipelines, making informed decisions on their application.
- Implement and manage messaging and queueing systems (e.g., Kafka, Azure Service Bus, JMS) with robust retry mechanisms and dead-letter queue strategies.
- Design and implement robust security measures for middleware systems processing PII or customer-sensitive data.
- Design and develop middleware systems to process and enrich messages from multiple upstream sources, integrating with data warehouses like Snowflake.
- Implement crosswalk and data enrichment logic within data pipelines using technologies like PySpark or Java Streams.
Required Skills and Qualifications:
- Hands-on experience developing Java, Spring, Python.
- Hands-on experience with Spring Boot, Spring Boot OAuth, Spring Security, Spring Data JPA, and Spring Batch.
- Understanding Relational Databases, such as Oracle, SQL Server, MySQL, Postgres or similar.
- Fluency in Java/J2EE, JSP, Web Services. Must have experience with JAVA 8 or higher.
- Experience with JMS, Kafka, IBM MQ or similar.
- Experience using software project tracking tools such as Jira.
- Familiarity with Azure services.
- Proven experience with CI/CD. Proven experience with Jenkins, Ansible, Docker, Kubernetes.
- Proven experience with version control (Github, Bitbucket).
- Familiarity with Linux OS/concepts.
- Demonstrated experience in designing and implementing secure data processing pipelines.
- Experience with data warehouse systems like Snowflake, Redshift, BigQuery.
- In-depth understanding of event-driven and batch-based data pipeline architectures.
- Hands-on experience with retry mechanisms and dead-letter queues in messaging systems.
- Strong knowledge of data security best practices, especially concerning PII and sensitive data.
- Experience with data enrichment and transformation processes, preferably using PySpark or Java Streams.
- Strong written and verbal communication skills.
- Self-motivated and ability to work well in a team.
Education
Bachelor of Science degree from an accredited university
Fusemachines is an Equal Opportunities Employer, committed to diversity and inclusion. All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, disability, or any other characteristic protected by applicable federal, state, or local laws.